#pragma once

#include "ICiudad.h"
#include "IExcursion.h"
#include "ICliente.h"

class CiudadMock : public ICiudad
{
public:
	CiudadMock(Cadena nombre, nat costoDiario);
	virtual ~CiudadMock();

	Cadena ObtenerNombre() const;
	nat ObtenerCostoDiario() const;

	bool operator==(const ICiudad& c) const;

private:
	Cadena m_Nombre;
	nat m_CostoDiario;
};

class ExcursionMock : public IExcursion
{
public:
	ExcursionMock(nat nro, Cadena fechaPartida);
	virtual ~ExcursionMock();

	nat ObtenerNro() const;
	Cadena ObtenerFechaPartida() const;

	bool operator==(const IExcursion& e) const;

private:
	nat m_Nro;
	Cadena m_FechaPartida;
};

class ClienteMock : public ICliente
{
public:
	ClienteMock(Cadena cI, Cadena nombre, Cadena fechaRegistro);
	virtual ~ClienteMock();

	Cadena ObtenerCI() const;
	Cadena ObtenerNombre() const;
	Cadena ObtenerFechaRegistro() const;

	bool operator==(const ICliente& c) const;

private:
	Cadena m_CI;
	Cadena m_Nombre;
	Cadena m_FechaRegistro;
};
